---
slug: "/getting-started/concepts"
title: "Concepts"
---

To better understand Vrite, first get to know a few concepts behind how the platform works.

## Organization

Concepts related to content organization in Vrite.

### Content Pieces

A content piece is a **structured JSON content** and related **metadata** taken together. You’ll likely spend a lot of time editing the content in Vrite’s _Editor_ and managing metadata in the _Content Piece_ side panel.

### Content Groups

Content groups group multiple content pieces together, and are represented in the dashboard as e.g. a Kanban column or a folder. You can nest them and reference their IDs when integrating with Vrite’s API.

### Workspaces

Content pieces, content groups, members and related settings are all part of a workspace. You can create and join multiple workspaces to better manage your work (e.g. creating separate workspaces for different websites or projects)

### Variants

Apart from the _Base_ content pieces, you can also create multiple _variants_ of them. Variants allow you to better organize related content, like i18n translations, and other kinds of adaptations. Until metadata or the content of the variant is edited, it’s shared with the base content piece.

## UI

How UI is organized in Vrite.

### Main Panel

Main panel is where the bulk of the content creation and mangement work is done. Currently, the main panel is used for the dashboard, editor and Git sync conflict-resolution.

### Side Panel

Side panel is a resizable area to the left of the main panel. It’s meant for secondary activites, like managing content piece metadata, settings, extensions, Git sync etc.

### Sidebar

Sidebar is the primary mean of navigation around Vrite. The options to the top navigate both the main and side panel, while the ones to the bottom — only the side panel.

## API & Customization

Miscellaneous concepts related to Vrite’s API and customization.

### Input/Output Transformers

Input and output transformers are an important part of the Vrite JavaScript SDK and the Git sync integration.

**Output transformers** help transform the content piece’s data to necessary output formats, like HTML or JSX tree for your frontends, or Markdown file when syncing with a Git repo.

**Input transformers** are currently meant exclusively for Git sync and help transform incoming files (e.g. Markdown, MDX, etc.) to HTML string and JSON metadata that can be loaded into Vrite.

### Extensions

The extensions are the primary way of extending the capabilities of Vrite’s platform. With direct access to both Vrite’s REST API and additional functions for customizing UI, they can be used to extend the editor, add easy publishing options and facilitate content synchronization with other platforms.

<Info>
  While in Beta, the **Vrite Extension System** is in development and currently limited to first-party extensions available only through Vrite Cloud.
</Info>